Hệ thống quản lý thanh toán POS nhà hàng

1 Imports System.Data.OleDb
2
3 Public Class frmMenuItemsExportImport
4     Public Sub Getdata()
5         Try
6             con = New OleDbConnection(cs)
7             con.Open()
8             cmd = New OleDbCommand(
"SELECT ItemID,RTRIM(DishName), RTRIM(Category),RTRIM(Kitchen),InventoryType, Rate,Discount from Dish order by DishName", con)
9             rdr = cmd.ExecuteReader(CommandBehavior.CloseConnection)
10             dgw.Rows.Clear()
11             While (rdr.Read() = True)
12                 dgw.Rows.Add(rdr(
0), rdr(1), rdr(2), rdr(3), rdr(4), rdr(5), rdr(6))
13             End While
14             con.Close()
15         Catch ex As Exception
16             MessageBox.Show(ex.Message,
"Error", MessageBoxButtons.OK, MessageBoxIcon.Error)
17         End Try
18     End Sub
19
20     Private Sub frmLogs_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
21         GetData()
22     End Sub
23     Sub Reset()
24         txtSearchByDish.Text =
""
25         txtCategory.Text =
""
26         DataGridView1.DataSource = Nothing
27         DataGridView1.Visible = False
28         btnUpdate.Enabled = False
29         GetData()
30     End Sub
31     Private Sub btnReset_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnReset.Click
32         Reset()
33     End Sub
34
35     Private Sub btnExportExcel_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnExportExcel.Click
36         ExportExcel(dgw)
37     End Sub
38
39     Private Sub txtSearchByDish_TextChanged(sender As System.Object, e As System.EventArgs) Handles txtSearchByDish.TextChanged
40         Try
41             con = New OleDbConnection(cs)
42             con.Open()
43             cmd = New OleDbCommand(
"SELECT ItemID,RTRIM(DishName), RTRIM(Category),RTRIM(Kitchen),InventoryType, Rate,Discount from Dish where DishName like '%" & txtSearchByDish.Text & "%' order by DishName", con)
44             rdr = cmd.ExecuteReader(CommandBehavior.CloseConnection)
45             dgw.Rows.Clear()
46             While (rdr.Read() = True)
47                 dgw.Rows.Add(rdr(
0), rdr(1), rdr(2), rdr(3), rdr(4), rdr(5), rdr(6))
48             End While
49             con.Close()
50         Catch ex As Exception
51             MessageBox.Show(ex.Message,
"Error", MessageBoxButtons.OK, MessageBoxIcon.Error)
52         End Try
53     End Sub
54
55     Private Sub dgw_RowPostPaint(sender As Object, e As System.Windows.Forms.DataGridViewRowPostPaintEventArgs) Handles dgw.RowPostPaint
56         Dim strRowNumber As String = (e.RowIndex +
1).ToString()
57         Dim size As SizeF = e.Graphics.MeasureString(strRowNumber, Me.Font)
58         If dgw.RowHeadersWidth < Convert.ToInt32((size.Width +
20)) Then
59             dgw.RowHeadersWidth = Convert.ToInt32((size.Width +
20))
60         End If
61         Dim b As Brush = SystemBrushes.ControlText
62         e.Graphics.DrawString(strRowNumber, Me.Font, b, e.RowBounds.Location.X +
15, e.RowBounds.Location.Y + ((e.RowBounds.Height - size.Height) / 2))
63     End Sub
64
65     Private Sub Button1_Click(sender As System.Object, e As System.EventArgs) Handles btnImportExcel.Click
66         Try
67             Dim OpenFileDialog As New OpenFileDialog
68             OpenFileDialog.Filter =
"Excel Files | *.xlsx; *.xls;| All Files (*.*)| *.*"
69             If OpenFileDialog.ShowDialog() = Windows.Forms.DialogResult.OK AndAlso OpenFileDialog.FileName <>
"" Then
70                 Cursor = Cursors.WaitCursor
71                 Timer1.Enabled = True
72                 Dim Pathname As String = OpenFileDialog.FileName
73                 Dim MyConnection As System.Data.OleDb.OleDbConnection
74                 Dim DtSet As System.Data.DataSet
75                 Dim MyCommand As System.Data.OleDb.OleDbDataAdapter
76                 MyConnection = New System.Data.OleDb.OleDbConnection(
"Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" + Pathname + ";Extended Properties=Excel 8.0;")
77                 MyCommand = New System.Data.OleDb.OleDbDataAdapter(
"select * from [Sheet1$]", MyConnection)
78                 MyConnection.Open()
79                 DtSet = New System.Data.DataSet
80                 MyCommand.Fill(DtSet)
81                 DataGridView1.Visible = True
82                 DataGridView1.DataSource = DtSet.Tables(
0)
83                 btnUpdate.Enabled = True
84             End If
85         Catch ex As Exception
86             MessageBox.Show(ex.Message,
"Error", MessageBoxButtons.OK, MessageBoxIcon.Error)
87         End Try
88     End Sub
89
90     Private Sub Timer1_Tick(sender As System.Object, e As System.EventArgs) Handles Timer1.Tick
91         Cursor = Cursors.Default
92         Timer1.Enabled = False
93     End Sub
94
95     Private Sub btnUpdate_Click(sender As System.Object, e As System.EventArgs) Handles btnUpdate.Click
96         Try
97             If DataGridView1.RowCount = Nothing Then
98                 MessageBox.Show(
"Sorry nothing to update.." & vbCrLf & "Please retrieve data in datagridview", "", MessageBoxButtons.OK, MessageBoxIcon.Error)
99                 Exit Sub
100             End If
101             For Each row As DataGridViewRow In DataGridView1.Rows
102                 Cursor = Cursors.WaitCursor
103                 Timer1.Enabled = True
104                 con = New OleDbConnection(cs)
105                 con.Open()
106                 Dim cb As String =
"update Dish set DishName=@d1, Category=@d2,Rate=" & Val(row.Cells(5).Value) & ",Discount=" & Val(row.Cells(6).Value) & ",Kitchen=@d3,InventoryType=@d4 where ItemID=@d5"
107                 cmd = New OleDbCommand(cb)
108                 cmd.Connection = con
109                 cmd.Parameters.AddWithValue(
"@d1", row.Cells(1).Value)
110                 cmd.Parameters.AddWithValue(
"@d2", row.Cells(2).Value)
111                 cmd.Parameters.AddWithValue(
"@d3", row.Cells(3).Value)
112                 cmd.Parameters.AddWithValue(
"@d4", row.Cells(4).Value)
113                 cmd.Parameters.AddWithValue(
"@d5", Val(row.Cells(0).Value))
114                 cmd.ExecuteReader()
115                 con.Close()
116             Next
117             MessageBox.Show(
"Successfully Updated", "Record", MessageBoxButtons.OK, MessageBoxIcon.Information)
118             DataGridView1.DataSource = Nothing
119             Reset()
120         Catch ex As OleDbException
121             MessageBox.Show(ex.Message,
"Error", MessageBoxButtons.OK, MessageBoxIcon.Error)
122
123             con.Close()
124         End Try
125
126     End Sub
127
128     Private Sub frmMenuItemsExportImport_FormClosing(sender As System.Object, e As System.Windows.Forms.FormClosingEventArgs) Handles MyBase.FormClosing
129         frmItem.Getdata()
130     End Sub
131
132     Private Sub txtCategory_TextChanged(sender As System.Object, e As System.EventArgs) Handles txtCategory.TextChanged
133         Try
134             con = New OleDbConnection(cs)
135             con.Open()
136             cmd = New OleDbCommand(
"SELECT ItemID,RTRIM(DishName), RTRIM(Category),RTRIM(Kitchen),InventoryType, Rate,Discount from Dish where Category like '%" & txtCategory.Text & "%' order by DishName", con)
137             rdr = cmd.ExecuteReader(CommandBehavior.CloseConnection)
138             dgw.Rows.Clear()
139             While (rdr.Read() = True)
140                 dgw.Rows.Add(rdr(
0), rdr(1), rdr(2), rdr(3), rdr(4), rdr(5), rdr(6))
141             End While
142             con.Close()
143         Catch ex As Exception
144             MessageBox.Show(ex.Message,
"Error", MessageBoxButtons.OK, MessageBoxIcon.Error)
145         End Try
146     End Sub
147 End Class


Gõ tìm kiếm nhanh...